﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Text;
using XZTZ.UMP.Public.Models.Base;
namespace XZTZ.UMP.Public.Models.Flow
{
    public class Flow_TemplateStep
    {
        /// <summary>
        /// 流程步骤ID
        /// </summary>
        [Key]
        public Guid guidFlowStepID { get; set; }
        /// <summary>
        /// 流程ID
        /// </summary>
        public Guid guidFlowID { get; set; }
        [Display(Name = "步骤名称")]
        public string strStepName { get; set; }


        [Display(Name = "审批方式")]//一人签字有效
        public string strCheckType { get; set; }

        [Range(1, 1000000)]
        [Display(Name = "限制日期")]
        public int intLimitDate { get; set; }

        /// <summary>
        /// 步骤类型 Base_SignatureStepType
        /// </summary>
        [Display(Name = "步骤类型")]
        public int strStepTypeID { get; set; }
        [Display(Name = "步骤类型")]
        public virtual Base_SignatureStepType Base_SignatureStepType { get; set; }

        [Display(Name = "业务规则")]
        public Guid guidRuleID { get; set; }
        [Display(Name = "业务规则")]
        public virtual Flow_StepRule Flow_StepRule { get; set; }

        /// <summary>
        /// 发送指向
        /// </summary>
        public string strSendPoint
        {
            get
            {

                return this.strSendPoint;

            }
            set { this.strSendPoint = "00"; }
        }
       
     
        [Display(Name = "上一步")]
        public Guid guidPreviousStep { get; set; }
        [Display(Name = "下一步")]
        public Guid guidNextStep { get; set; }
        
        public string strExecSql { get; set; }
        [Display(Name ="步骤排序号")]
        public int intIndexNo { get; set; }
       
       [Display(Name ="步骤策略")]
        public string stepPolicy { get; set; }
    }
}
